home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 23 / CU Amiga - Super CD-ROM 23 (June 1998).iso / CreatingGames / Utilities / Asm / AB3DIIsrc / source_4000 / parcom.s < prev    next >
Encoding:
Text File  |  1996-07-29  |  1.1 KB  |  76 lines

  1.  
  2.  jsr InitParMaster
  3.  
  4.  jsr ParSendFirst
  5.  
  6.  move.w #0,$dff180
  7.  
  8.  rts
  9.  
  10.  
  11. ;Before calling either of the transmission routines, the
  12. ;appropriate initialisation routine must be called
  13. ;(only once).
  14. ;The master _MUST_ use the ParSendFirst routine, and the
  15. ;slave _MUST_ use the ParRecFirst routine.
  16.  
  17. InitParSlave:
  18.     move.b    #%00000001,$bfd200
  19.     rts
  20.     
  21. InitParMaster:
  22.     move.b    #%00000010,$bfd200
  23.     rts
  24.  
  25. SENDPAR:    
  26. ParSendFirst:
  27.     move.w    #3,d2
  28. slp1:    btst    #1,$bfd000
  29.     beq.s    slp1
  30.     move.b    #$ff,$bfe301
  31.     move.b    d0,$bfe101
  32.     bset    #0,$bfd000
  33. slp2:    btst    #1,$bfd000
  34.     bne.s    slp2
  35.     move.b    #0,$bfe301
  36.     bclr    #0,$bfd000
  37. slp3:    btst    #1,$bfd000
  38.     beq.s    slp3
  39.     move.b    $bfe101,d1
  40.     bset    #0,$bfd000
  41. slp4:    btst    #1,$bfd000
  42.     bne.s    slp4
  43.     bclr    #0,$bfd000
  44.     lsr.l    #8,d0
  45.     ror.l    #8,d1
  46.     dbra    d2,slp1
  47.     move.l d1,d0
  48.     rts
  49.  
  50. RECPAR:    
  51. ParRecFirst:
  52.     move.w    #3,d2
  53. rlp1:    move.b    #0,$bfe301
  54.     bset    #1,$bfd000
  55. rlp2:    btst    #0,$bfd000
  56.     beq.s    rlp2
  57.     move.b    $bfe101,d1
  58.     bclr    #1,$bfd000
  59. rlp3:    btst    #0,$bfd000
  60.     bne.s    rlp3
  61.     move.b    #$ff,$bfe301
  62.     move.b    d0,$bfe101
  63.     bset    #1,$bfd000
  64. rlp4:    btst    #0,$bfd000
  65.     beq.s    rlp4
  66.     move.b    #0,$bfe301
  67.     bclr    #1,$bfd000
  68. rlp5:    btst    #0,$bfd000
  69.     bne.s    rlp5
  70.     
  71.     lsr.l #8,d0
  72.     ror.l #8,d1
  73.     
  74.     dbra    d2,rlp1
  75.     move.l d1,d0
  76.     rts